PROMPT_TOKENS = """
[unused1]
[unused2]
[unused3]
[unused4]
[unused5]
[unused6]
[unused7]
[unused8]
[unused9]
[unused10]
[unused11]
[unused12]
[unused13]
[unused14]
[unused15]
[unused16]
[unused17]
[unused18]
[unused19]
[unused20]
[unused21]
[unused22]
[unused23]
[unused24]
[unused25]
[unused26]
[unused27]
[unused28]
[unused29]
[unused30]
[unused31]
[unused32]
[unused33]
[unused34]
[unused35]
[unused36]
[unused37]
[unused38]
[unused39]
[unused40]
[unused41]
[unused42]
[unused43]
[unused44]
[unused45]
[unused46]
[unused47]
[unused48]
[unused49]
[unused50]
[unused51]
[unused52]
[unused53]
[unused54]
[unused55]
[unused56]
[unused57]
[unused58]
[unused59]
[unused60]
[unused61]
[unused62]
[unused63]
[unused64]
[unused65]
[unused66]
[unused67]
[unused68]
[unused69]
[unused70]
[unused71]
[unused72]
[unused73]
[unused74]
[unused75]
[unused76]
[unused77]
[unused78]
[unused79]
[unused80]
[unused81]
[unused82]
[unused83]
[unused84]
[unused85]
[unused86]
[unused87]
[unused88]
[unused89]
[unused90]
[unused91]
[unused92]
[unused93]
[unused94]
[unused95]
[unused96]
[unused97]
[unused98]
[unused99]
[unused100]
[unused101]
¡
¢
£
¥
§
¨
©
ª
«
¬
®
°
±
²
³
´
µ
¶
·
¹
º
»
¼
½
¾
¿
À
Á
Â
Ä
Å
Æ
Ç
È
É
Í
Î
Ñ
Ó
Ö
×
Ø
Ú
Ü
Þ
ß
à
á
â
ã
ä
å
æ
ç
è
é
ê
ë
ì
í
î
ï
ð
ñ
ò
ó
ô
õ
ö
÷
ø
ù
ú
û
ü
ý
þ
ÿ
Ā
ā
ă
ą
Ć
ć
Č
č
ď
Đ
đ
ē
ė
ę
ě
ğ
ġ
Ħ
ħ
ĩ
Ī
ī
İ
ı
ļ
Ľ
ľ
Ł
ł
ń
ņ
ň
ŋ
Ō
ō
ŏ
ő
Œ
œ
ř
Ś
ś
Ş
ş
Š
š
Ţ
ţ
ť
ũ
ū
ŭ
ů
ű
ų
ŵ
ŷ
ź
Ż
ż
Ž
ž
Ə
ƒ
ơ
ư
ǎ
ǐ
ǒ
ǔ
ǫ
Ș
ș
Ț
ț
ɐ
ɑ
ɔ
ɕ
ə
ɛ
ɡ
ɣ
ɨ
ɪ
ɲ
ɾ
ʀ
ʁ
ʂ
ʃ
ʊ
ʋ
ʌ
ʐ
ʑ
ʒ
ʔ
ʰ
ʲ
ʳ
ʷ
א
ב
ג
ד
ה
ו
ז
ח
ט
י
כ
ל
ם
מ
ן
נ
ס
ע
פ
צ
ק
ר
ש
ת
،
ء
آ
أ
إ
ئ
ا
ب
ة
ت
ث
ج
ح
خ
د
ذ
ر
ز
س
ش
ص
ض
ط
ظ
ع
غ
ف
ق
ك
ل
م
ن
ه
و
ى
ي
َ
ِ
ٹ
پ
چ
ک
گ
ہ
ی
ے
ं
आ
क
ग
च
ज
ण
त
द
ध
न
प
ब
भ
म
य
र
ल
व
श
ष
स
ह
ा
ि
ी
ु
े
ो
्
।
॥
আ
ই
এ
ও
ক
খ
গ
চ
ছ
জ
ট
ত
থ
দ
ধ
ন
প
ব
ম
য
র
ল
শ
স
হ
়
া
ি
ী
ু
ে
ো
্
য়
க
த
ப
ம
ய
ர
ல
வ
ா
ி
ு
்
ร
་
ག
ང
ད
ན
བ
མ
ར
ལ
ས
ི
ུ
ེ
ོ
ა
ე
ი
ლ
ნ
ო
რ
ს
ᴬ
ᴵ
ᵀ
ᵃ
ᵇ
ᵈ
ᵉ
ᵍ
ᵏ
ᵐ
ᵒ
ᵖ
ᵗ
ᵘ
ᵢ
ᵣ
ᵤ
ᵥ
ᶜ
ᶠ
ḍ
Ḥ
ḥ
Ḩ
ḩ
ḳ
ṃ
ṅ
ṇ
ṛ
ṣ
ṭ
ạ
ả
ấ
ầ
ẩ
ậ
ắ
ế
ề
ể
ễ
ệ
ị
ọ
ố
ồ
ổ
ộ
ớ
ờ
ợ
ụ
ủ
ứ
ừ
ử
ữ
ự
ỳ
ỹ
ἀ
ἐ
ὁ
ὐ
ὰ
ὶ
ὸ
ῆ
ῖ
ῦ
ῶ
〜
い
う
え
お
か
き
く
け
こ
さ
し
す
せ
そ
た
ち
つ
て
と
な
に
の
は
ひ
ま
み
む
め
も
や
ゆ
よ
ら
り
る
れ
ん
ア
ィ
イ
ウ
エ
オ
カ
ガ
キ
ク
グ
コ
サ
シ
ジ
ス
ズ
タ
ダ
ッ
テ
デ
ト
ド
ナ
ニ
ハ
バ
パ
フ
ブ
プ
マ
ミ
ム
ャ
ュ
ラ
リ
ル
レ
ロ
ン
##〜
##い
##う
##え
##お
##か
##き
##く
##け
##こ
##さ
##し
##す
##せ
##そ
##た
##ち
##つ
##て
##と
##な
##に
##の
##は
##ひ
##ま
##み
##む
##め
##も
##や
##ゆ
##よ
##ら
##り
##る
##れ
##ん
##ア
##ィ
##イ
##ウ
##エ
##オ
##カ
##ガ
##キ
##ク
##グ
##コ
##サ
##シ
##ジ
##ス
##ズ
##タ
##ダ
##ッ
##テ
##デ
##ト
##ド
##ナ
##ニ
##ハ
##バ
##パ
##フ
##ブ
##プ
##マ
##ミ
##ム
##ャ
##ュ
##ラ
##リ
##ル
##レ
##ロ
##ン
##א
##ב
##ג
##ד
##ה
##ו
##ז
##ח
##ט
##י
##כ
##ל
##ם
##מ
##ן
##נ
##ס
##ע
##פ
##צ
##ק
##ר
##ש
##ת
##،
##ء
##آ
##أ
##إ
##ئ
##ا
##ب
##ت
##ث
##ج
##ح
##خ
##ذ
##ز
##س
##ش
##ص
##ض
##ط
##ظ
##ع
##غ
##ف
##ق
##ك
##ل
##و
##ى
##َ
##ِ
##ٹ
##پ
##چ
##ک
##گ
##ہ
##ی
##ے
##ं
##आ
##क
##ग
##च
##ज
##ण
##त
##द
##ध
##न
##प
##ब
##भ
##म
##य
##र
##ल
##व
##श
##ष
##स
##ह
##ा
##ि
##ी
##ु
##े
##ो
##्
##।
##॥
##আ
##ই
##এ
##ও
##ক
##খ
##গ
##চ
##ছ
##জ
##ট
##ত
##থ
##দ
##ধ
##ন
##প
##ব
##ম
##য
##র
##ল
##শ
##স
##হ
##়
##া
##ি
##ী
##ু
##ে
##ো
##্
##য়
##க
##த
##ப
##ம
##ய
##ர
##ல
##வ
##ா
##ி
##ு
##்
##ร
##་
##ག
##ང
##ད
##ན
##བ
##མ
##ར
##ལ
##ས
##ི
##ུ
##ེ
##ོ
##ა
##ე
##ი
##ლ
##ნ
##ო
##რ
##ს
##ᴬ
##ᴵ
##ᵀ
##ᵃ
##ᵇ
##ᵈ
##ᵉ
##ᵍ
##ᵏ
##ᵐ
##ᵒ
##ᵖ
##ᵗ
##ᵘ
##ᵣ
##ᵤ
##ᵥ
##ᶜ
##ᶠ
##ḍ
##Ḥ
##ḥ
##Ḩ
##ḩ
##ḳ
##ṃ
##ṅ
##ṇ
##ṛ
##ṣ
##ṭ
##ạ
##ả
##ấ
##ầ
##ẩ
##ậ
##ắ
##ế
##ề
##ể
##ễ
##ệ
##ị
##ọ
##ố
##ồ
##ổ
##ộ
##ớ
##ờ
##ợ
##ụ
##ủ
##ứ
##ừ
##ử
##ữ
##ự
##ỳ
##ỹ
##ἀ
##ἐ
##ὁ
##ὐ
##ὰ
##ὶ
##ὸ
##ῆ
##ῖ
##ῦ
##ῶ
##¼
##¾
##¿
##À
##Á
##Â
##Ä
##Å
##Æ
##Ç
##È
##É
##Í
##Î
##Ñ
##Ó
##Ö
##×
##Ø
##Ú
##Ü
##Þ
##â
##ã
##æ
##ç
##î
##ï
##ð
##ñ
##ô
##õ
##÷
##û
##þ
##ÿ
##Ā
##ą
##Ć
##Č
##ď
##Đ
##đ
##ē
##ė
##ę
##ě
##ğ
##ġ
##Ħ
##ħ
##ĩ
##Ī
##İ
##ļ
##Ľ
##ľ
##Ł
##ņ
##ň
##ŋ
##Ō
##ŏ
##ő
##Œ
##œ
##ř
##Ś
##ś
##Ş
##Š
##Ţ
##ţ
##ť
##ũ
##ŭ
##ů
##ű
##ų
##ŵ
##ŷ
##ź
##Ż
##ż
##Ž
##ž
##Ə
##ƒ
##ơ
##ư
##ǎ
##ǐ
##ǒ
##ǔ
##ǫ
##Ș
##Ț
##ț
##ɐ
À
Á
ñ
ò
õ
ö
÷
ø
ù
ú
û
ü
ý
þ
ÿ
Ā
ā
Ă
ă
Ą
ą
Ć
ć
Ĉ
ĉ
Ċ
ċ
Č
č
Ď
ď
Đ
đ
Ē
ē
Ĕ
ĕ
Ė
ė
Ę
ę
Ě
ě
Ĝ
ĝ
Ğ
ğ
ĊĊ
Âł
ÂłÂł
ĠÂł
ÂłÂłÂłÂł
ĠÂłĠÂł
wcsstore
ÂłÂłÂłÂłÂłÂłÂłÂł
ĠDragonbound
ĠguiActive
ĠÂłĠÂłĠÂłĠÂł
ļéĨĴ
Ġdavidjl
è¦ļéĨĴ
""".strip().split("\n")


def build_prompt_tokens(tokenizer):
    for i in range(1000):
        PROMPT_TOKENS.append(f"▁{i}")
        PROMPT_TOKENS.append(f"▁#{i}")
    return list(filter(lambda x:x in tokenizer.get_vocab(), PROMPT_TOKENS))
